<!DOCTYPE html>
<html lang="zh">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title>其它问题集合 | vue-next-admin</title>
    <meta name="description" content="🎉🎉🔥基于vue3.x 、Typescript、vite、Element plus等，适配手机、平板、pc 的后台开源免费模板库（vue2.x请切换vue-prev-admin分支）开发文档">
    <link rel="stylesheet" href="/vue-next-admin-doc-preview/assets/style.220fb3c9.css">
    <link rel="modulepreload" href="/vue-next-admin-doc-preview/assets/plugin-vue_export-helper.da6f02ab.js">
    <link rel="modulepreload" href="/vue-next-admin-doc-preview/assets/Home.f92766fb.js">
    <link rel="modulepreload" href="/vue-next-admin-doc-preview/assets/config_otherIssues_index.md.8c11a5f0.lean.js">
    <link rel="modulepreload" href="/vue-next-admin-doc-preview/assets/app.43e6f49f.js">
    
    <link rel="icon" href="/vue-next-admin-doc-preview/images/favicon.ico">
  <meta name="keywords" content="doc、vue-next-admin、vue-next-admin-doc、vue3、element-plus、vuejs/vue-next">
  <meta name="description" content="🎉🎉🔥基于vue3.x 、Typescript、vite、Element plus等，适配手机、平板、pc 的后台开源免费模板库（vue2.x请切换vue-prev-admin分支）开发文档">
  <script>var _hmt=_hmt||[];(function(){var e=document.createElement("script");e.src="https://hm.baidu.com/hm.js?dd9ada7b25f65a181a42780f04b764e6";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})();</script>
  <meta name="twitter:title" content="其它问题集合 | vue-next-admin">
  <meta property="og:title" content="其它问题集合 | vue-next-admin">
  </head>
  <body>
    <div id="app"><!--[--><div class="theme"><header class="nav-bar" data-v-fcf5c4a8><div class="sidebar-button" data-v-fcf5c4a8><svg class="icon" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z" class></path></svg></div><a class="nav-bar-title" href="/vue-next-admin-doc-preview/" aria-label="vue-next-admin, back to home" data-v-fcf5c4a8 data-v-4424da2c><img class="logo" src="/vue-next-admin-doc-preview/images/logo-mini.svg" alt="Logo" data-v-4424da2c> vue-next-admin</a><div class="flex-grow" data-v-fcf5c4a8></div><div class="nav" data-v-fcf5c4a8><nav class="nav-links" data-v-fcf5c4a8 data-v-107a016c><!--[--><div class="item" data-v-107a016c><div class="nav-link" data-v-107a016c data-v-e720f45e><a class="item" href="/vue-next-admin-doc-preview/home/" data-v-e720f45e>指南 <!----></a></div></div><div class="item" data-v-107a016c><div class="nav-link" data-v-107a016c data-v-e720f45e><a class="item active" href="/vue-next-admin-doc-preview/config/" data-v-e720f45e>配置参考 <!----></a></div></div><div class="item" data-v-107a016c><div class="nav-dropdown-link" data-v-107a016c data-v-719eac16><button class="button" data-v-719eac16><span class="button-text" data-v-719eac16>集成后端</span><span class="right button-arrow" data-v-719eac16></span></button><ul class="dialog" data-v-719eac16><!--[--><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://github.com/PandaGoAdmin/PandaX" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>@熊猫 PandaGoAdmin</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://toscode.gitee.com/GionConnection/gopro_free" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>@甜蜜蜜 GoPro平台</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://gitee.com/GionConnection/niupi-free" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>@甜蜜蜜 NiuPi 平台</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://gitee.com/tiger1103/gfast/tree/os-v3/" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>@游子 GFast-V3</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><!--]--></ul></div></div><div class="item" data-v-107a016c><div class="nav-dropdown-link" data-v-107a016c data-v-719eac16><button class="button" data-v-719eac16><span class="button-text" data-v-719eac16>线上演示</span><span class="right button-arrow" data-v-719eac16></span></button><ul class="dialog" data-v-719eac16><!--[--><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://lyt-top.gitee.io/vue-next-admin-preview/#/login" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>vue3.x 版本预览（vue-next-admin）</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://lyt-top.gitee.io/vue-prev-admin-preview/#/login" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>vue2.x 版本预览（vue-prev-admin）</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><!--]--></ul></div></div><div class="item" data-v-107a016c><div class="nav-link" data-v-107a016c data-v-e720f45e><a class="item isExternal" href="https://gitee.com/lyt-top/vue-next-admin/blob/master/CHANGELOG.md" target="_blank" rel="noopener noreferrer" data-v-e720f45e>更新日志 <svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-e720f45e><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div></div><div class="item" data-v-107a016c><div class="nav-dropdown-link" data-v-107a016c data-v-719eac16><button class="button" data-v-719eac16><span class="button-text" data-v-719eac16>代码仓库</span><span class="right button-arrow" data-v-719eac16></span></button><ul class="dialog" data-v-719eac16><!--[--><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://gitee.com/lyt-top/vue-next-admin" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>gitee（国内：实时更新）</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://github.com/lyt-Top/vue-next-admin" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>github（国外：定期更新）</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><!--]--></ul></div></div><!--]--><!----><div class="item" data-v-107a016c><div class="nav-link" data-v-107a016c data-v-e720f45e><a class="item isExternal" href="https://gitee.com/lyt-top/vue-next-admin-doc" target="_blank" rel="noopener noreferrer" data-v-e720f45e>文档仓库 <svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-e720f45e><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div></div></nav></div><!--[--><!--]--></header><aside class="sidebar" data-v-34c05c3a><nav class="nav-links nav" data-v-34c05c3a data-v-107a016c><!--[--><div class="item" data-v-107a016c><div class="nav-link" data-v-107a016c data-v-e720f45e><a class="item" href="/vue-next-admin-doc-preview/home/" data-v-e720f45e>指南 <!----></a></div></div><div class="item" data-v-107a016c><div class="nav-link" data-v-107a016c data-v-e720f45e><a class="item active" href="/vue-next-admin-doc-preview/config/" data-v-e720f45e>配置参考 <!----></a></div></div><div class="item" data-v-107a016c><div class="nav-dropdown-link" data-v-107a016c data-v-719eac16><button class="button" data-v-719eac16><span class="button-text" data-v-719eac16>集成后端</span><span class="right button-arrow" data-v-719eac16></span></button><ul class="dialog" data-v-719eac16><!--[--><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://github.com/PandaGoAdmin/PandaX" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>@熊猫 PandaGoAdmin</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://toscode.gitee.com/GionConnection/gopro_free" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>@甜蜜蜜 GoPro平台</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://gitee.com/GionConnection/niupi-free" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>@甜蜜蜜 NiuPi 平台</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://gitee.com/tiger1103/gfast/tree/os-v3/" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>@游子 GFast-V3</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><!--]--></ul></div></div><div class="item" data-v-107a016c><div class="nav-dropdown-link" data-v-107a016c data-v-719eac16><button class="button" data-v-719eac16><span class="button-text" data-v-719eac16>线上演示</span><span class="right button-arrow" data-v-719eac16></span></button><ul class="dialog" data-v-719eac16><!--[--><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://lyt-top.gitee.io/vue-next-admin-preview/#/login" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>vue3.x 版本预览（vue-next-admin）</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://lyt-top.gitee.io/vue-prev-admin-preview/#/login" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>vue2.x 版本预览（vue-prev-admin）</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><!--]--></ul></div></div><div class="item" data-v-107a016c><div class="nav-link" data-v-107a016c data-v-e720f45e><a class="item isExternal" href="https://gitee.com/lyt-top/vue-next-admin/blob/master/CHANGELOG.md" target="_blank" rel="noopener noreferrer" data-v-e720f45e>更新日志 <svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-e720f45e><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div></div><div class="item" data-v-107a016c><div class="nav-dropdown-link" data-v-107a016c data-v-719eac16><button class="button" data-v-719eac16><span class="button-text" data-v-719eac16>代码仓库</span><span class="right button-arrow" data-v-719eac16></span></button><ul class="dialog" data-v-719eac16><!--[--><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://gitee.com/lyt-top/vue-next-admin" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>gitee（国内：实时更新）</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><li class="dialog-item" data-v-719eac16><div class="nav-dropdown-link-item" data-v-719eac16 data-v-43c736e2><a class="item isExternal" href="https://github.com/lyt-Top/vue-next-admin" target="_blank" rel="noopener noreferrer" data-v-43c736e2><span class="arrow" data-v-43c736e2></span><span class="text" data-v-43c736e2>github（国外：定期更新）</span><span class="icon" data-v-43c736e2><svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-43c736e2><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></span></a></div></li><!--]--></ul></div></div><!--]--><!----><div class="item" data-v-107a016c><div class="nav-link" data-v-107a016c data-v-e720f45e><a class="item isExternal" href="https://gitee.com/lyt-top/vue-next-admin-doc" target="_blank" rel="noopener noreferrer" data-v-e720f45e>文档仓库 <svg class="icon outbound" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-e720f45e><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div></div></nav><!--[--><!--]--><ul class="sidebar-links" data-v-34c05c3a><!--[--><li class="sidebar-link"><p class="sidebar-link-item">基础</p><ul class="sidebar-links"><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/">简介</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/menu/">菜单配置</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/layoutConfig/">布局配置</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/iconfont/">字体图标</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/server/">服务端交互</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/vuex/">vuex</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/build/">打包预览</a><!----></li></ul></li><li class="sidebar-link"><p class="sidebar-link-item">高级</p><ul class="sidebar-links"><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/power/">权限管理</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/route/">路由参数</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/i18n/">国际化</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/tagsView/">标签页</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/directive/">内置指令</a><!----></li></ul></li><li class="sidebar-link"><p class="sidebar-link-item">其它</p><ul class="sidebar-links"><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/charts/">数据可视化</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/tool/">工具类集合</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/partyPlug/">第三方插件使用</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/builtPlug/">内置插件的使用</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item active" href="/vue-next-admin-doc-preview/config/otherIssues/">其它问题</a><ul class="sidebar-links"><li class="sidebar-link"><a class="sidebar-link-item" href="#更新-升级-vite-2-0-后遇到的问题">更新(升级) vite 2.0 后遇到的问题</a><ul class="sidebar-links"><li class="sidebar-link"><a class="sidebar-link-item" href="#vite-1-x">vite 1.x</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#vite-2-x">vite 2.x</a><!----></li></ul></li><li class="sidebar-link"><a class="sidebar-link-item" href="#页面打开时空白问题">页面打开时空白问题</a><ul class="sidebar-links"><li class="sidebar-link"><a class="sidebar-link-item" href="#升级浏览器、node-版本">升级浏览器、node 版本</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#重新安装依赖">重新安装依赖</a><!----></li></ul></li><li class="sidebar-link"><a class="sidebar-link-item" href="#本地调试接口跨域问题">本地调试接口跨域问题</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#安装的依赖与-package-json-中的不一致">安装的依赖与 package.json 中的不一致</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#cnpm-run-dev-无法运行项目">cnpm run dev 无法运行项目</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#批量更新-package-json">批量更新 package.json</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#dependencies-和-devdependencies">dependencies 和 devDependencies</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#项目编译慢">项目编译慢</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#哪些文件可以删除">哪些文件可以删除</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#如何跟随-master-升级项目">如何跟随 master 升级项目</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#壁纸库">壁纸库</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#事件总线-mitt">事件总线 mitt</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#设置可视区高度-100">设置可视区高度 100%</a><!----></li><li class="sidebar-link"><a class="sidebar-link-item" href="#master-分支装依赖时会出现的问题">master 分支装依赖时会出现的问题</a><!----></li></ul></li></ul></li><li class="sidebar-link"><p class="sidebar-link-item">赞助</p><ul class="sidebar-links"><li class="sidebar-link"><a class="sidebar-link-item" href="/vue-next-admin-doc-preview/config/support/">支持开源</a><!----></li></ul></li><!--]--></ul><!--[--><!--]--></aside><div class="sidebar-mask"></div><main class="page" data-v-1c2e469b><div class="container" data-v-1c2e469b><!--[--><!--]--><div style="position:relative;" class="content" data-v-1c2e469b><div><h1 id="其它问题集合" tabindex="-1">其它问题集合 <a class="header-anchor" href="#其它问题集合" aria-hidden="true">#</a></h1><h2 id="更新-升级-vite-2-0-后遇到的问题" tabindex="-1">更新(升级) vite 2.0 后遇到的问题 <a class="header-anchor" href="#更新-升级-vite-2-0-后遇到的问题" aria-hidden="true">#</a></h2><h3 id="vite-1-x" tabindex="-1">vite 1.x <a class="header-anchor" href="#vite-1-x" aria-hidden="true">#</a></h3><div class="language-ts"><pre><code><span class="token keyword">import</span> <span class="token keyword">type</span> <span class="token punctuation">{</span> UserConfig <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">&quot;vite&quot;</span><span class="token punctuation">;</span>
<span class="token keyword">import</span> <span class="token punctuation">{</span> resolve <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">&quot;path&quot;</span><span class="token punctuation">;</span>
<span class="token keyword">import</span> <span class="token punctuation">{</span> loadEnv <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">&quot;./build/utils&quot;</span><span class="token punctuation">;</span>

<span class="token keyword">const</span> pathResolve <span class="token operator">=</span> <span class="token punctuation">(</span>dir<span class="token operator">:</span> <span class="token builtin">string</span><span class="token punctuation">)</span><span class="token operator">:</span> <span class="token builtin">any</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
  <span class="token keyword">return</span> <span class="token function">resolve</span><span class="token punctuation">(</span>__dirname<span class="token punctuation">,</span> <span class="token string">&quot;.&quot;</span><span class="token punctuation">,</span> dir<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">;</span>

<span class="token keyword">const</span> alias<span class="token operator">:</span> Record<span class="token operator">&lt;</span><span class="token builtin">string</span><span class="token punctuation">,</span> <span class="token builtin">string</span><span class="token operator">&gt;</span> <span class="token operator">=</span> <span class="token punctuation">{</span>
  <span class="token string-property property">&quot;/@/&quot;</span><span class="token operator">:</span> <span class="token function">pathResolve</span><span class="token punctuation">(</span><span class="token string">&quot;src&quot;</span><span class="token punctuation">)</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">;</span>

<span class="token keyword">const</span> <span class="token punctuation">{</span> <span class="token constant">VITE_PORT</span><span class="token punctuation">,</span> <span class="token constant">VITE_PUBLIC_PATH</span><span class="token punctuation">,</span> <span class="token constant">VITE_OPEN</span> <span class="token punctuation">}</span> <span class="token operator">=</span> <span class="token function">loadEnv</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

<span class="token keyword">const</span> root<span class="token operator">:</span> <span class="token builtin">string</span> <span class="token operator">=</span> process<span class="token punctuation">.</span><span class="token function">cwd</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

<span class="token keyword">const</span> viteConfig<span class="token operator">:</span> UserConfig <span class="token operator">=</span> <span class="token punctuation">{</span>
  root<span class="token punctuation">,</span>
  alias<span class="token punctuation">,</span>
  outDir<span class="token operator">:</span> <span class="token string">&quot;dist&quot;</span><span class="token punctuation">,</span>
  minify<span class="token operator">:</span> <span class="token string">&quot;esbuild&quot;</span><span class="token punctuation">,</span>
  port<span class="token operator">:</span> <span class="token constant">VITE_PORT</span><span class="token punctuation">,</span>
  open<span class="token operator">:</span> <span class="token constant">VITE_OPEN</span><span class="token punctuation">,</span>
  base<span class="token operator">:</span> process<span class="token punctuation">.</span>env<span class="token punctuation">.</span><span class="token constant">NODE_ENV</span> <span class="token operator">===</span> <span class="token string">&quot;production&quot;</span> <span class="token operator">?</span> <span class="token string">&quot;./&quot;</span> <span class="token operator">:</span> <span class="token constant">VITE_PUBLIC_PATH</span><span class="token punctuation">,</span>
  optimizeDeps<span class="token operator">:</span> <span class="token punctuation">{</span>
    include<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token string">&quot;element-plus/lib/locale/lang/zh-cn&quot;</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
  <span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">;</span>

<span class="token keyword">export</span> <span class="token keyword">default</span> viteConfig<span class="token punctuation">;</span>
</code></pre></div><h3 id="vite-2-x" tabindex="-1">vite 2.x <a class="header-anchor" href="#vite-2-x" aria-hidden="true">#</a></h3><blockquote><p>alias、server、build</p></blockquote><div class="tip custom-block"><p class="custom-block-title">提示</p><p>需要安装 @vitejs/plugin-vue，否则 <code>.vue</code> 文件报错。安装命令：<code>cnpm install @vitejs/plugin-vue --save-dev</code></p></div><div class="language-ts"><pre><code><span class="token keyword">import</span> vue <span class="token keyword">from</span> <span class="token string">&quot;@vitejs/plugin-vue&quot;</span><span class="token punctuation">;</span>
<span class="token keyword">import</span> <span class="token keyword">type</span> <span class="token punctuation">{</span> UserConfig <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">&quot;vite&quot;</span><span class="token punctuation">;</span>
<span class="token keyword">import</span> <span class="token punctuation">{</span> loadEnv <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">&quot;./build/utils&quot;</span><span class="token punctuation">;</span>

<span class="token keyword">const</span> <span class="token punctuation">{</span> <span class="token constant">VITE_PORT</span><span class="token punctuation">,</span> <span class="token constant">VITE_PUBLIC_PATH</span><span class="token punctuation">,</span> <span class="token constant">VITE_OPEN</span> <span class="token punctuation">}</span> <span class="token operator">=</span> <span class="token function">loadEnv</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

<span class="token keyword">const</span> viteConfig<span class="token operator">:</span> UserConfig <span class="token operator">=</span> <span class="token punctuation">{</span>
  plugins<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token function">vue</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
  root<span class="token operator">:</span> process<span class="token punctuation">.</span><span class="token function">cwd</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">,</span>
  alias<span class="token operator">:</span> <span class="token punctuation">[</span>
    <span class="token punctuation">{</span>
      find<span class="token operator">:</span> <span class="token regex"><span class="token regex-delimiter">/</span><span class="token regex-source language-regex">^\/@\/</span><span class="token regex-delimiter">/</span></span><span class="token punctuation">,</span>
      replacement<span class="token operator">:</span> <span class="token string">&quot;/src/&quot;</span><span class="token punctuation">,</span>
    <span class="token punctuation">}</span><span class="token punctuation">,</span>
  <span class="token punctuation">]</span><span class="token punctuation">,</span>
  base<span class="token operator">:</span> process<span class="token punctuation">.</span>env<span class="token punctuation">.</span><span class="token constant">NODE_ENV</span> <span class="token operator">===</span> <span class="token string">&quot;production&quot;</span> <span class="token operator">?</span> <span class="token constant">VITE_PUBLIC_PATH</span> <span class="token operator">:</span> <span class="token string">&quot;./&quot;</span><span class="token punctuation">,</span>
  optimizeDeps<span class="token operator">:</span> <span class="token punctuation">{</span>
    include<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token string">&quot;element-plus/lib/locale/lang/zh-cn&quot;</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
  <span class="token punctuation">}</span><span class="token punctuation">,</span>
  server<span class="token operator">:</span> <span class="token punctuation">{</span>
    port<span class="token operator">:</span> <span class="token constant">VITE_PORT</span><span class="token punctuation">,</span>
    open<span class="token operator">:</span> <span class="token constant">VITE_OPEN</span><span class="token punctuation">,</span>
  <span class="token punctuation">}</span><span class="token punctuation">,</span>
  build<span class="token operator">:</span> <span class="token punctuation">{</span>
    outDir<span class="token operator">:</span> <span class="token string">&quot;dist&quot;</span><span class="token punctuation">,</span>
    minify<span class="token operator">:</span> <span class="token string">&quot;esbuild&quot;</span><span class="token punctuation">,</span>
    sourcemap<span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span>
  <span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">;</span>

<span class="token keyword">export</span> <span class="token keyword">default</span> viteConfig<span class="token punctuation">;</span>
</code></pre></div><h2 id="页面打开时空白问题" tabindex="-1">页面打开时空白问题 <a class="header-anchor" href="#页面打开时空白问题" aria-hidden="true">#</a></h2><blockquote><p>检查浏览器、node 版本：<code>升级浏览器、node 版本</code> 或 <code>重新安装依赖</code></p></blockquote><h3 id="升级浏览器、node-版本" tabindex="-1">升级浏览器、node 版本 <a class="header-anchor" href="#升级浏览器、node-版本" aria-hidden="true">#</a></h3><ul><li>谷歌浏览器版本 <code>版本 72.0.3626.121</code> 或者 <code>版本 &lt; 72.x</code>，页面将出现报错 <code>Uncaught SyntaxError: Unexpected token.</code> ，这是因为老版本浏览器不支持最新语法 <code>xx?.xx?.xx</code>。</li><li>node 版本需要 <code>大于 12xx.xx.x</code>，<a href="https://nodejs.org/zh-cn/" target="_blank" rel="noopener noreferrer">node 官网</a></li></ul><div class="language-bash"><pre><code><span class="token comment"># cmd 输入 node -v</span>
<span class="token function">node</span> -v

<span class="token comment"># 得到 node 版本号</span>
v14.16.0
</code></pre></div><h3 id="重新安装依赖" tabindex="-1">重新安装依赖 <a class="header-anchor" href="#重新安装依赖" aria-hidden="true">#</a></h3><p style="font-weight:bold;">一、先删除项目中的 node_modules </p><blockquote><p>建议使用 cnpm，因为 yarn 有时会报错。<a href="https://nodejs.org/zh-cn/" target="_blank" rel="noopener noreferrer">node 版本 &gt; 12xx.xx.x</a></p></blockquote><p style="font-weight:bold;">二、使用 cnpm 获取 yarn 代替 npm，（桌面 cmd 运行）</p><ul><li>安装 cnpm：<code>npm install -g cnpm --registry=https://registry.npm.taobao.org</code></li><li>安装 yarn：<code>npm install -g yarn</code></li></ul><p style="font-weight:bold;">三、vue-next-admin 项目根目录</p><div class="language-bash"><pre><code><span class="token comment"># 使用 cnpm install 或 cnpm i 安装依赖</span>
cnpm <span class="token function">install</span>

<span class="token comment"># 或者使用 yarn install 安装依赖</span>
<span class="token function">yarn</span> <span class="token function">install</span>
</code></pre></div><h2 id="本地调试接口跨域问题" tabindex="-1">本地调试接口跨域问题 <a class="header-anchor" href="#本地调试接口跨域问题" aria-hidden="true">#</a></h2><blockquote><p>No &#39;Access-Control-Allow-Origin&#39; header is present on the requested resource.</p></blockquote><p>  Access to image at <code>&#39;https://image.zhangxinxu:9000/#/study/image/blog/201310/2013-10-10203238.png&#39;</code> from origin <code>&#39;http://localhost:8888&#39;</code> has been blocked by CORS policy: No &#39;Access-Control-Allow-Origin&#39; header is present on the requested resource.</p><p>  &quot;No <code>&#39;Access-Control-Allow-Origin&#39;</code> header is present on the requested resource. Origin <code>&#39;http://localhost:8888&#39;</code> is therefore not allowed access.&quot;，翻译下，因为被请求的资源没有设置 &#39;Access-Control-Allow-Origin&#39;，所以从 <code>&#39;http://localhost:8888&#39;</code> 发起的请求不被允许。</p><p>解决：</p><ul><li>查看文章：<a href="https://blog.csdn.net/qq_34450741/article/details/107444815" target="_blank" rel="noopener noreferrer">vue cli 4.0+ 解决前端跨域问题</a></li><li>基础章节：<a href="/config/server/#跨域处理">服务端交互</a></li></ul><h2 id="安装的依赖与-package-json-中的不一致" tabindex="-1">安装的依赖与 package.json 中的不一致 <a class="header-anchor" href="#安装的依赖与-package-json-中的不一致" aria-hidden="true">#</a></h2><div class="tip custom-block"><p class="custom-block-title">TIP</p><ul><li><p>&#39;~&#39;（波浪符号）:他会更新到当前 minor version（也就是中间的那位数字）中最新的版本。放到我们的例子中就是：&quot;element-plus&quot;: &quot;~1.2.0-beta.4&quot;，这个库会去匹配更新到 1.2.x 的最新版本，如果出了一个新的版本为 1.3.0，则不会自动升级。波浪符号是曾经 npm 安装时候的默认符号，现在已经变为了插入符号。</p></li><li><p>&#39;^&#39;（插入符号）: 这个符号就显得非常的灵活了，他将会把当前库的版本更新到当前 major version（也就是第一位数字）中最新的版本。放到我们的例子中就是：&quot;element-plus&quot;: &quot;^1.2.0-beta.4&quot;, 这个库会去匹配 1.x.x 中最新的版本，但是他不会自动更新到 2.0.0。</p></li></ul></div><p>打开根目录 <code>package.json</code>，去掉 <code>^</code>，如下：</p><div class="language-json"><pre><code><span class="token comment">// 默认</span>
<span class="token property">&quot;dependencies&quot;</span><span class="token operator">:</span> <span class="token punctuation">{</span>
  <span class="token property">&quot;element-plus&quot;</span><span class="token operator">:</span> <span class="token string">&quot;^1.2.0-beta.4&quot;</span>
<span class="token punctuation">}</span>

<span class="token comment">// 去掉后</span>
<span class="token property">&quot;dependencies&quot;</span><span class="token operator">:</span> <span class="token punctuation">{</span>
  <span class="token property">&quot;element-plus&quot;</span><span class="token operator">:</span> <span class="token string">&quot;1.2.0-beta.4&quot;</span>
<span class="token punctuation">}</span>
</code></pre></div><h2 id="cnpm-run-dev-无法运行项目" tabindex="-1">cnpm run dev 无法运行项目 <a class="header-anchor" href="#cnpm-run-dev-无法运行项目" aria-hidden="true">#</a></h2><p style="font-weight:bold;">一、错误消息，以 vitepress 为例</p><blockquote><p>1.1、此错误为 node 版本过低，因为使用的是 <code>v13.6.0</code> 的 node 版本</p></blockquote><div class="language-bash"><pre><code>failed to start server. error:
 Error: Package exports <span class="token keyword">for</span> <span class="token string">&#39;C:\Users\issuser\Desktop\vue-next-admin-doc\node_modules\_vitepress@0.20.2@vitepress\node_modules\vue&#39;</span> <span class="token keyword">do</span> not define a <span class="token string">&#39;./dist/vue.runtime.esm-bundler.js&#39;</span> subpath
    at applyExports <span class="token punctuation">(</span>internal/modules/cjs/loader.js:531:13<span class="token punctuation">)</span>
    at resolveExports <span class="token punctuation">(</span>internal/modules/cjs/loader.js:551:12<span class="token punctuation">)</span>
    at Function.Module._findPath <span class="token punctuation">(</span>internal/modules/cjs/loader.js:657:22<span class="token punctuation">)</span>
    at Function.Module._resolveFilename <span class="token punctuation">(</span>internal/modules/cjs/loader.js:960:27<span class="token punctuation">)</span>
    at Function.resolve <span class="token punctuation">(</span>internal/modules/cjs/helpers.js:78:19<span class="token punctuation">)</span>
    at resolveAliases <span class="token punctuation">(</span>C:<span class="token punctuation">\</span>Users<span class="token punctuation">\</span>issuser<span class="token punctuation">\</span>Desktop<span class="token punctuation">\</span>vue-next-admin-doc<span class="token punctuation">\</span>node_modules<span class="token punctuation">\</span>_vitepress@0.20.2@vitepress<span class="token punctuation">\</span>dist<span class="token punctuation">\</span>node<span class="token punctuation">\</span>serve-c378302d.js:12331:28<span class="token punctuation">)</span>
    at resolveConfig <span class="token punctuation">(</span>C:<span class="token punctuation">\</span>Users<span class="token punctuation">\</span>issuser<span class="token punctuation">\</span>Desktop<span class="token punctuation">\</span>vue-next-admin-doc<span class="token punctuation">\</span>node_modules<span class="token punctuation">\</span>_vitepress@0.20.2@vitepress<span class="token punctuation">\</span>dist<span class="token punctuation">\</span>node<span class="token punctuation">\</span>serve-c378302d.js:13372:12<span class="token punctuation">)</span>
    at processTicksAndRejections <span class="token punctuation">(</span>internal/process/task_queues.js:97:5<span class="token punctuation">)</span>
    at async Object.createServer <span class="token punctuation">(</span>C:<span class="token punctuation">\</span>Users<span class="token punctuation">\</span>issuser<span class="token punctuation">\</span>Desktop<span class="token punctuation">\</span>vue-next-admin-doc<span class="token punctuation">\</span>node_modules<span class="token punctuation">\</span>_vitepress@0.20.2@vitepress<span class="token punctuation">\</span>dist<span class="token punctuation">\</span>node<span class="token punctuation">\</span>serve-c378302d.js:36631:18<span class="token punctuation">)</span> <span class="token punctuation">{</span>
  code: <span class="token string">&#39;MODULE_NOT_FOUND&#39;</span>
<span class="token punctuation">}</span>
<span class="token function">npm</span> ERR<span class="token operator">!</span> code ELIFECYCLE
<span class="token function">npm</span> ERR<span class="token operator">!</span> errno <span class="token number">1</span>
<span class="token function">npm</span> ERR<span class="token operator">!</span> vue-next-admin-doc@1.0.0 dev: <span class="token variable"><span class="token variable">`</span>vitepress dev docs --port <span class="token number">9000</span><span class="token variable">`</span></span>
<span class="token function">npm</span> ERR<span class="token operator">!</span> Exit status <span class="token number">1</span>
<span class="token function">npm</span> ERR<span class="token operator">!</span>
<span class="token function">npm</span> ERR<span class="token operator">!</span> Failed at the vue-next-admin-doc@1.0.0 dev script.
<span class="token function">npm</span> ERR<span class="token operator">!</span> This is probably not a problem with npm. There is likely additional logging output above.

<span class="token function">npm</span> ERR<span class="token operator">!</span> A complete log of this run can be found in:
<span class="token function">npm</span> ERR<span class="token operator">!</span>     C:<span class="token punctuation">\</span>Users<span class="token punctuation">\</span>issuser<span class="token punctuation">\</span>AppData<span class="token punctuation">\</span>Roaming<span class="token punctuation">\</span>npm-cache<span class="token punctuation">\</span>_logs<span class="token punctuation">\</span><span class="token number">2021</span>-12-07T02_06_33_435Z-debug.log
</code></pre></div><p style="font-weight:bold;">二、 查看 node 版本，进行版本升级</p><blockquote><p>2.1、node 各版本下载地址：<a href="https://npmmirror.com/mirrors/node/" target="_blank" rel="noopener noreferrer">https://npmmirror.com/mirrors/node/</a>。<code>.msi</code> 后缀的为有安装界面应用。</p></blockquote><div class="language-bash"><pre><code><span class="token comment"># win + r，cmd 中输入</span>
λ <span class="token function">node</span> -v
<span class="token comment"># 输出 v16.13.0</span>
</code></pre></div><h2 id="批量更新-package-json" tabindex="-1">批量更新 package.json <a class="header-anchor" href="#批量更新-package-json" aria-hidden="true">#</a></h2><p>当新建一个项目的时候，有时候会从其他项目的 <code>package.json</code> 里面 copy 一份 <code>dependencies</code> 过来，或者在 <code>github</code> 上下载项目作为改动时，但因为是新项目，我们想用各个依赖包的最新版本。如果手动去修改 <code>dependencies</code> 中各个包的版本号，那就太麻烦了，借助 <code>npm-check-updates</code> 工具可以很方便的将 <code>package.json</code> 中的依赖包版本号更新为最新版本。</p><div class="tip custom-block"><p class="custom-block-title">提示</p><p>以下命令都是在 cmd 中执行：</p></div><div class="language-bash"><pre><code><span class="token comment"># 1、安装</span>
cnpm <span class="token function">install</span> -g npm-check-updates

<span class="token comment"># 2、检查 package.json 中是否有更新</span>
ncu

<span class="token comment"># 3、更新依赖到最新版本 or 更新全部 ncu -a</span>
ncu -u
</code></pre></div><blockquote><p>更新全部 dependencies 到最新版本(包括当前指定版本范围满足最新版本号的,比如^4.2.0 -&gt; ^4.3.0)</p></blockquote><div class="language-bash"><pre><code><span class="token comment"># 更新全部 dependencies 到最新版本</span>
ncu -a
</code></pre></div><h2 id="dependencies-和-devdependencies" tabindex="-1">dependencies 和 devDependencies <a class="header-anchor" href="#dependencies-和-devdependencies" aria-hidden="true">#</a></h2><blockquote><p>根目录 <code>package.json</code> 中：</p></blockquote><p>npm 安装依赖 <code>dependencies</code> 和 <code>devDependencies</code> 的区别：</p><ul><li><code>dependencies</code>：是需要发布到生产环境的</li><li><code>devDependencies</code>：里面的插件只用于开发环境，不用于生产环境</li></ul><p>npm 安装方式：</p><ul><li><code>dependencies</code>：npm install 依赖名称 --save</li><li><code>devDependencies</code>：npm install 依赖名称 --save-dev</li></ul><p>其它说明：</p><ul><li><code>dependencies</code>：插件不管你引不引入都会打包到文件中去</li><li><code>devDependencies</code>：若文件中 import 引入 devDependencies 中插件，依然会把当前引入的插件打包到文件中，不引入则不打包</li></ul><h2 id="项目编译慢" tabindex="-1">项目编译慢 <a class="header-anchor" href="#项目编译慢" aria-hidden="true">#</a></h2><blockquote><p>cnpm run dev 编译慢，根目录 <code>package.json</code>，尝试删除 <code>--force</code></p></blockquote><div class="language-json"><pre><code><span class="token property">&quot;scripts&quot;</span><span class="token operator">:</span> <span class="token punctuation">{</span>
  <span class="token property">&quot;dev&quot;</span><span class="token operator">:</span> <span class="token string">&quot;vite&quot;</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
</code></pre></div><h2 id="哪些文件可以删除" tabindex="-1">哪些文件可以删除 <a class="header-anchor" href="#哪些文件可以删除" aria-hidden="true">#</a></h2><p style="font-weight:bold;">一、百度统计</p><blockquote><p>根目录 <code>index.html</code></p></blockquote><div class="language-html"><pre><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>script</span> <span class="token attr-name">type</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">&quot;</span>text/javascript<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span><span class="token script"><span class="token language-javascript">
  <span class="token keyword">var</span> _hmt <span class="token operator">=</span> _hmt <span class="token operator">||</span> <span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
  <span class="token punctuation">(</span><span class="token keyword">function</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token keyword">var</span> hm <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">createElement</span><span class="token punctuation">(</span><span class="token string">&quot;script&quot;</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    hm<span class="token punctuation">.</span>src <span class="token operator">=</span> <span class="token string">&quot;https://hm.baidu.com/hm.js?d9c8b87d10717013641458b300c552e4&quot;</span><span class="token punctuation">;</span>
    <span class="token keyword">var</span> s <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">getElementsByTagName</span><span class="token punctuation">(</span><span class="token string">&quot;script&quot;</span><span class="token punctuation">)</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
    s<span class="token punctuation">.</span>parentNode<span class="token punctuation">.</span><span class="token function">insertBefore</span><span class="token punctuation">(</span>hm<span class="token punctuation">,</span> s<span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>script</span><span class="token punctuation">&gt;</span></span>
</code></pre></div><p style="font-weight:bold;">二、百度地图 key</p><blockquote><p>根目录 <code>index.html</code></p></blockquote><div class="language-html"><pre><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>script</span>
  <span class="token attr-name">type</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">&quot;</span>text/javascript<span class="token punctuation">&quot;</span></span>
  <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">&quot;</span>https://api.map.baidu.com/api?v=3.0&amp;ak=wsijQt8sLXrCW71YesmispvYHitfG9gv&amp;s=1<span class="token punctuation">&quot;</span></span>
<span class="token punctuation">&gt;</span></span><span class="token script"></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>script</span><span class="token punctuation">&gt;</span></span>
</code></pre></div><p style="font-weight:bold;">三、演示界面</p><blockquote><p><code>/@/views/fun</code> 与 <code>/@/views/pages</code>，需要删除对应的依赖</p></blockquote><p style="font-weight:bold;">四、其它</p><blockquote><p>根据具体情况进行对应的删除修改</p></blockquote><h2 id="如何跟随-master-升级项目" tabindex="-1">如何跟随 master 升级项目 <a class="header-anchor" href="#如何跟随-master-升级项目" aria-hidden="true">#</a></h2><blockquote><p>1.1、<a href="https://gitee.com/lyt-top/vue-next-admin/releases" target="_blank" rel="noopener noreferrer">发行版</a>，进行下载覆盖（前提是未修改布局等，否则自己修改的将被覆盖，谨慎操作）。</p></blockquote><div class="language-ts"><pre><code><span class="token comment">// 下载</span>
vue<span class="token operator">-</span>next<span class="token operator">-</span>admin<span class="token operator">-</span>v1<span class="token punctuation">.</span><span class="token number">1.2</span><span class="token punctuation">.</span>zip
下载 Source <span class="token function">code</span> <span class="token punctuation">(</span>zip<span class="token punctuation">)</span>
下载 Source <span class="token function">code</span> <span class="token punctuation">(</span>tar<span class="token punctuation">.</span>gz<span class="token punctuation">)</span>
</code></pre></div><blockquote><p>1.2、<a href="https://gitee.com/lyt-top/vue-next-admin/commits/master" target="_blank" rel="noopener noreferrer">提交日志</a>，进行一个一个对比修改（貌似也没有其它好的办法）。</p></blockquote><h2 id="壁纸库" tabindex="-1">壁纸库 <a class="header-anchor" href="#壁纸库" aria-hidden="true">#</a></h2><p><a href="https://wallhaven.cc/" target="_blank" rel="noopener noreferrer">https://wallhaven.cc/</a>，可下载 4k、8k 壁纸（是否侵权，自行辨别）</p><h2 id="事件总线-mitt" tabindex="-1">事件总线 mitt <a class="header-anchor" href="#事件总线-mitt" aria-hidden="true">#</a></h2><blockquote><p>相关文档地址：<a href="https://github.com/developit/mitt" target="_blank" rel="noopener noreferrer">mitt</a></p></blockquote><p style="font-weight:bold;">一、发送</p><div class="language-ts"><pre><code><span class="token operator">&lt;</span>script lang<span class="token operator">=</span><span class="token string">&quot;ts&quot;</span><span class="token operator">&gt;</span>
  <span class="token function">setup</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token keyword">const</span> <span class="token punctuation">{</span> proxy <span class="token punctuation">}</span> <span class="token operator">=</span> <span class="token function">getCurrentInstance</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">as</span> <span class="token builtin">any</span><span class="token punctuation">;</span>

    <span class="token comment">// 方法名 + 参数</span>
    proxy<span class="token punctuation">.</span>mittBus<span class="token punctuation">.</span><span class="token function">emit</span><span class="token punctuation">(</span><span class="token string">&#39;layoutMobileResize&#39;</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
      layout<span class="token operator">:</span> <span class="token string">&#39;defaults&#39;</span><span class="token punctuation">,</span>
      clientWidth<span class="token punctuation">,</span>
    <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span>
<span class="token operator">&lt;</span><span class="token operator">/</span>script<span class="token operator">&gt;</span>
</code></pre></div><p style="font-weight:bold;">二、监听</p><div class="language-ts"><pre><code><span class="token operator">&lt;</span>script lang<span class="token operator">=</span><span class="token string">&quot;ts&quot;</span><span class="token operator">&gt;</span>
  <span class="token function">setup</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token keyword">const</span> <span class="token punctuation">{</span> proxy <span class="token punctuation">}</span> <span class="token operator">=</span> <span class="token function">getCurrentInstance</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">as</span> <span class="token builtin">any</span><span class="token punctuation">;</span>

    <span class="token comment">// 回调参数</span>
    proxy<span class="token punctuation">.</span>mittBus<span class="token punctuation">.</span><span class="token function">on</span><span class="token punctuation">(</span><span class="token string">&#39;layoutMobileResize&#39;</span><span class="token punctuation">,</span> <span class="token punctuation">(</span>res<span class="token operator">:</span> <span class="token builtin">any</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      <span class="token comment">// 逻辑处理</span>
    <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span>
<span class="token operator">&lt;</span><span class="token operator">/</span>script<span class="token operator">&gt;</span>
</code></pre></div><p style="font-weight:bold;">三、销毁</p><div class="language-ts"><pre><code><span class="token operator">&lt;</span>script lang<span class="token operator">=</span><span class="token string">&quot;ts&quot;</span><span class="token operator">&gt;</span>
  <span class="token function">setup</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token keyword">const</span> <span class="token punctuation">{</span> proxy <span class="token punctuation">}</span> <span class="token operator">=</span> <span class="token function">getCurrentInstance</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">as</span> <span class="token builtin">any</span><span class="token punctuation">;</span>

    <span class="token function">onUnmounted</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      proxy<span class="token punctuation">.</span>mittBus<span class="token punctuation">.</span><span class="token function">off</span><span class="token punctuation">(</span><span class="token string">&#39;layoutMobileResize&#39;</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

      <span class="token comment">// 或者</span>
      proxy<span class="token punctuation">.</span>mittBus<span class="token punctuation">.</span><span class="token function">off</span><span class="token punctuation">(</span><span class="token string">&#39;layoutMobileResize&#39;</span><span class="token punctuation">,</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span>
<span class="token operator">&lt;</span><span class="token operator">/</span>script<span class="token operator">&gt;</span>

</code></pre></div><h2 id="设置可视区高度-100" tabindex="-1">设置可视区高度 100% <a class="header-anchor" href="#设置可视区高度-100" aria-hidden="true">#</a></h2><blockquote><p>主要是通过 <a href="https://www.runoob.com/cssref/func-calc.html" target="_blank" rel="noopener noreferrer">CSS calc() 函数</a> 进行动态适配</p></blockquote><div class="language-ts"><div class="highlight-lines"><br><br><br><div class="highlighted"> </div><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br></div><pre><code><span class="token operator">&lt;</span>template<span class="token operator">&gt;</span>
  <span class="token operator">&lt;</span>div <span class="token operator">:</span>style<span class="token operator">=</span><span class="token string">&quot;{ height: `calc(100vh - ${initTagViewHeight}` }&quot;</span><span class="token operator">&gt;</span>
    <span class="token operator">&lt;</span>div <span class="token keyword">class</span><span class="token operator">=</span><span class="token string">&quot;layout-view-bg-white&quot;</span><span class="token operator">&gt;</span>
      <span class="token operator">&lt;</span>div style<span class="token operator">=</span><span class="token string">&quot;height: 100%&quot;</span><span class="token operator">&gt;</span>这里是内容区<span class="token operator">...</span><span class="token operator">&lt;</span><span class="token operator">/</span>div<span class="token operator">&gt;</span>
    <span class="token operator">&lt;</span><span class="token operator">/</span>div<span class="token operator">&gt;</span>
  <span class="token operator">&lt;</span><span class="token operator">/</span>div<span class="token operator">&gt;</span>
<span class="token operator">&lt;</span><span class="token operator">/</span>template<span class="token operator">&gt;</span>

<span class="token operator">&lt;</span>script lang<span class="token operator">=</span><span class="token string">&quot;ts&quot;</span><span class="token operator">&gt;</span>
<span class="token keyword">import</span> <span class="token punctuation">{</span> computed <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">&#39;vue&#39;</span><span class="token punctuation">;</span>
<span class="token keyword">import</span> <span class="token punctuation">{</span> useStore <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">&#39;/@/store/index&#39;</span><span class="token punctuation">;</span>
<span class="token keyword">export</span> <span class="token keyword">default</span> <span class="token punctuation">{</span>
	name<span class="token operator">:</span> <span class="token string">&#39;funEchartsMap&#39;</span><span class="token punctuation">,</span>
	<span class="token function">setup</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token keyword">const</span> store <span class="token operator">=</span> <span class="token function">useStore</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token comment">// 设置主内容的高度</span>
    <span class="token keyword">const</span> initTagViewHeight <span class="token operator">=</span> <span class="token function">computed</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      <span class="token keyword">let</span> <span class="token punctuation">{</span> isTagsview <span class="token punctuation">}</span> <span class="token operator">=</span> store<span class="token punctuation">.</span>state<span class="token punctuation">.</span>themeConfig<span class="token punctuation">.</span>themeConfig<span class="token punctuation">;</span>
      <span class="token keyword">let</span> <span class="token punctuation">{</span> isTagsViewCurrenFull <span class="token punctuation">}</span> <span class="token operator">=</span> store<span class="token punctuation">.</span>state<span class="token punctuation">.</span>tagsViewRoutes<span class="token punctuation">;</span>
      <span class="token keyword">if</span> <span class="token punctuation">(</span>isTagsViewCurrenFull<span class="token punctuation">)</span> <span class="token punctuation">{</span>
        <span class="token keyword">return</span> <span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">30px</span><span class="token template-punctuation string">`</span></span><span class="token punctuation">;</span>
      <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span>
        <span class="token keyword">if</span> <span class="token punctuation">(</span>isTagsview<span class="token punctuation">)</span> <span class="token keyword">return</span> <span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">114px</span><span class="token template-punctuation string">`</span></span><span class="token punctuation">;</span>
        <span class="token keyword">else</span> <span class="token keyword">return</span> <span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">80px</span><span class="token template-punctuation string">`</span></span><span class="token punctuation">;</span>
      <span class="token punctuation">}</span>
    <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span>
<span class="token punctuation">}</span>
</code></pre></div><h2 id="master-分支装依赖时会出现的问题" tabindex="-1">master 分支装依赖时会出现的问题 <a class="header-anchor" href="#master-分支装依赖时会出现的问题" aria-hidden="true">#</a></h2><p style="font-weight:bold;">一、screenFul 要求的node 版本大于14.x.1</p><blockquote><p>解决方法：<a href="https://npmmirror.com/mirrors/node/" target="_blank" rel="noopener noreferrer">升级 node 版本</a>。<code>.msi</code> 后缀的为有安装界面应用。</p></blockquote><p style="font-weight:bold;">二、开发依赖的types 库，已有自己的类型声明</p><blockquote><p>解决方法：根目录 <code>package.json</code> 下：&quot;@types/axios&quot;: &quot;^0.14.0&quot;，&quot; @types/clipboard&quot;: &quot;^2.0.1&quot;, 去掉这两个依赖</p></blockquote><p style="font-weight:bold;">三、会报 error Unexpected end of JSON input while parsing near &#39;...n4m5KyE3UEIxfv0HEAVbz&#39; 这种类型的错误</p><blockquote><p>解决方法：cmd 中执行以下命令</p></blockquote><div class="language-bash"><pre><code><span class="token function">npm</span> cache clean --force
</code></pre></div></div></div><footer class="page-footer" data-v-1c2e469b data-v-0673e034><div class="edit" data-v-0673e034><div class="edit-link" data-v-0673e034 data-v-8a069728><a class="link" href="https://gitee.com/lyt-top/vue-next-admin-doc/edit/master/config/otherIssues/index.md" target="_blank" rel="noopener noreferrer" data-v-8a069728>欢迎到 Gitee 上编辑此页！ <svg class="icon outbound icon" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-8a069728><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div></div><div class="updated" data-v-0673e034><p class="last-updated" data-v-0673e034 data-v-90112f00><span class="prefix" data-v-90112f00>上次更新:</span><span class="datetime" data-v-90112f00></span></p></div></footer><div class="next-and-prev-link" data-v-1c2e469b data-v-7587c728><div class="container" data-v-7587c728><div class="prev" data-v-7587c728><a class="link" href="/vue-next-admin-doc-preview/config/builtPlug/" data-v-7587c728><svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon icon-prev" data-v-7587c728><path d="M19,11H7.4l5.3-5.3c0.4-0.4,0.4-1,0-1.4s-1-0.4-1.4,0l-7,7c-0.1,0.1-0.2,0.2-0.2,0.3c-0.1,0.2-0.1,0.5,0,0.8c0.1,0.1,0.1,0.2,0.2,0.3l7,7c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3c0.4-0.4,0.4-1,0-1.4L7.4,13H19c0.6,0,1-0.4,1-1S19.6,11,19,11z"></path></svg><span class="text" data-v-7587c728>内置插件的使用</span></a></div><div class="next" data-v-7587c728><a class="link" href="/vue-next-admin-doc-preview/config/support/" data-v-7587c728><span class="text" data-v-7587c728>支持开源</span><svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon icon-next" data-v-7587c728><path d="M19.9,12.4c0.1-0.2,0.1-0.5,0-0.8c-0.1-0.1-0.1-0.2-0.2-0.3l-7-7c-0.4-0.4-1-0.4-1.4,0s-0.4,1,0,1.4l5.3,5.3H5c-0.6,0-1,0.4-1,1s0.4,1,1,1h11.6l-5.3,5.3c-0.4,0.4-0.4,1,0,1.4c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3l7-7C19.8,12.6,19.9,12.5,19.9,12.4z"></path></svg></a></div></div></div><!--[--><!--]--></div></main></div><!----><!--]--></div>
    <script>__VP_HASH_MAP__ = JSON.parse("{\"config_build_index.md\":\"25a4868c\",\"config_builtplug_index.md\":\"5b54ad9e\",\"config_charts_index.md\":\"8f5e7e91\",\"config_directive_index.md\":\"cea57dfb\",\"config_i18n_index.md\":\"91989455\",\"config_iconfont_index.md\":\"5afbfc15\",\"config_index.md\":\"423a6220\",\"config_layoutconfig_index.md\":\"8502b019\",\"config_menu_index.md\":\"87cf7540\",\"config_otherissues_index.md\":\"8c11a5f0\",\"config_partyplug_index.md\":\"952fb091\",\"config_power_index.md\":\"a860276d\",\"config_route_index.md\":\"4b1161ed\",\"config_server_index.md\":\"6e007fa7\",\"config_support_index.md\":\"14b17028\",\"config_tagsview_index.md\":\"d780cf23\",\"config_tool_index.md\":\"e5ffcf9f\",\"config_vuex_index.md\":\"4ba3ea39\",\"home_compatible_index.md\":\"e98f9de6\",\"home_doc_index.md\":\"454b9914\",\"home_eslint_index.md\":\"cf598f3d\",\"home_fast_index.md\":\"61bb01c4\",\"home_forpeople_index.md\":\"3a1d93cd\",\"home_gitpush_index.md\":\"5f11f210\",\"home_index.md\":\"fefbe933\",\"home_install_index.md\":\"b0c69385\",\"home_introduce_index.md\":\"aa5f5748\",\"home_prettier_index.md\":\"55198871\",\"home_thank_index.md\":\"61aa982f\",\"home_vscode_index.md\":\"ff82581e\",\"index.md\":\"4f57e483\"}")</script>
    <script type="module" async src="/vue-next-admin-doc-preview/assets/app.43e6f49f.js"></script>
    
  </body>
</html>